namespace Vanilla.UI

import Vanilla

// THEMED PROPERTIES
abstract class ThemedProperties:
	public Next as ThemedProperties

// STANDARD THEMED PROPERTIES
class ColourThemedProperties (ThemedProperties):
	public Background as Colour
	public Foreground as Colour

// THEME
abstract class Theme:
	public static Default as Theme = DefaultTheme()
	
	public SloppyFocus = false
	
	abstract def DefaultSpacingFor (g as Gadget) as double:
		pass
	
	abstract def DefaultFontFor (g as Gadget) as Font:
		pass
	
	abstract def DefaultForegroundColourFor (g as Gadget) as Colour:
		pass
	
	abstract def MouseOverChangesLookFor (g as Gadget) as bool:
		pass
		
	abstract def Draw (g as Gadget, b as Brush):
		pass
